When a continuous image is sampled (e.g. at the sensor in a digital camera), if the frequency components of the continuous image are too high, aliasing will occur in the sampled image. Aliasing occurs when an original image contains frequencies that are higher than (2 s)−1 where s represents spacing between samples. Unfortunately, low-pass filtering an image blurs the image, so images are often slightly under-sampled to make the sampled image appear sharper. This applies to both natural images and particularly to computer generated images.
Small amounts of aliasing are not very visible. However, when an image is resampled at a higher resolution, the aliasing in the original image is magnified and becomes much more visible and objectionable in the output image. Such artefacts are especially visible along edges in the image data, where they are sometimes referred to as “jaggies”. Jaggies are a significant cause of quality degradation in up-scaled images.
Many methods have been proposed to deal with the problem of jaggies based on modifying an interpolation process in the presence of edges. For example, the sharpness of an interpolating kernel may be varied in edge regions or a kernel may be selected that is stretched or otherwise oriented to match the orientation of the edge. In some methods, pixel patterns are matched to dictionaries that provide specific rules for interpolating the missing sample. Machine learning methods have been proposed by some as a means of generating these rules while others use hand coded rules. Many of these methods suffer from the fact that edge orientations are quantized and so create visible artefacts in output images at the boundaries of regions where different kernels have been applied. Others of the methods are constrained by the fact that their rules can only be applied to fixed rate interpolation.
All of the above conventional methods suffer from unpredictable artefacts that are a result of their empirical or arbitrary construction. To prevent such artefacts in the output image it is necessary to moderate the use of the methods, often via separate sets of rules which add further unpredictability and complexity and prevent optimal image quality being achieved.
More theoretical methods that optimise kernel selection to data have been proposed but are typically iterative and remain too complex to implement in hardware for consumer electronics.
Thus a need exists for a method which reduces the “jaggie” artefacts caused by image up-sampling, and which is simple whilst being adaptable to a continuous range of edge orientations and rescaling rates. A further need exists for a method which provides a predictable failure mode so that secondary artefacts can be prevented.